package org.pvt.model;

import org.jetbrains.annotations.NotNull;

import java.util.Arrays;
import java.util.List;

import static org.pvt.model.HasNameAndBelongsToEvent.createModel;

/**
 * @author Pavel Talanov
 */
public interface Models {

    @NotNull
    public static Event Event = new Event();

    @NotNull
    public static HasNameAndBelongsToEvent Person = createModel("persons");

    @NotNull
    public static HasNameAndBelongsToEvent Category = createModel("categories");

    @NotNull
    public static Expense Expense = new Expense();

    @NotNull
    public static Payment Payment = new Payment();

    @NotNull
    public static List<Model> All = Arrays.<Model>asList(
            Event,
            Person,
            Category,
            Expense,
            Payment
    );
}
